<!-- 
    
1. header和footer占屏幕全部宽度，高度固定值。
2. 中间的contaier部分是一个三栏布局
3. left和right宽度固定，middle自适应填满整个区域；高度为三栏中最大的高度；

-->

<!DOCTYPE html>
<html lang="zh-Hans">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>圣杯布局</title>
    <style>
        * {
            margin: 0px;
            padding: 0px;
            font-size: 28px;
            color: #666;
            font-weight: bold;
        }


        header,
        footer {
            width: 100%;
            height: 80px;
            background-color: lightgrey;
            text-align: center;
        }

        .container {
            width: 100%;
            height: 300px;
            display: flex;
            flex-direction: row;
        }

        .container>div {}

        .middle {
            flex-grow: 1;
            background-color: aqua;
            /*flex-grow是在主轴方向扩展弹性项
            默认为0，不扩展，当设置值n时，表示将主轴方向剩余空间分配给当前项*/
        }

        .left {
            width: 200px;
            background-color: bisque;
        }

        .right {
            width: 300px;
            background-color: pink;
        }
    </style>
</head>

<body>
    <header>header</header>
    <div class="container clearfix">
        <div class="left">left</div>
        <div class="middle">
            middle
            <p>flex-grow是在主轴方向扩展弹性项
                默认为0，不扩展，当设置值n时，表示将主轴方向剩余空间分配(n/所有n的和) 份给当前项</p>
                <p>所以只有一个项设置flex-gorw时，当然是主轴方向的剩余空间都分配给当前项，当前项宽度得到扩展</p>
        </div>
        <div class="right">right</div>
    </div>

    <footer>footer</footer>
</body>

</html>